Skip to content

Refactor: performance improvement batch 1#464

Merged
timcadman merged 15 commits intov7.0-devfrom
perf-batch-1-v5
Mar 31, 2026
Merged

Refactor: performance improvement batch 1#464
timcadman merged 15 commits intov7.0-devfrom
perf-batch-1-v5

Conversation

@timcadman
Copy link
Copy Markdown

@timcadman timcadman commented Mar 16, 2026

Description of changes

  • Refactored absDS, asDataMatrixDS, asIntegerDS, listDS, asLogicalDS, asMatrixDS and asNumericDS.
  • Created serverside function expDS and logDS as these previously didn't exist.
  • Extended .loadServersideObject to handle both object names and column names as input.
  • Added performance tests.
  • Updated test expectations following refactor.

Instructions & checklist for PR reviewers

Code review

  • Check that object is loaded via .loadServersideObject and not with eval.
  • Check that if class checks were previously present on the clientside they have been added to the serverside.
  • Check that performance tests have been added for all functions unless they already existed.
  • Check tests have been updated to reflect changed expectations.

Testing

  • Clone dsBaseClient using branch perf-batch-1.
  • Install dsBase on a test server based on this branch.
  • Run devtools::test( ) on the clientside package and check all tests pass
  • Run devtools::build( ) on the clientside package and check it builds without errors
  • Run devtools::test( ) on the serverside package and check all tests pass
  • Run devtools::build( ) on the serverside package and check it builds without errors

@timcadman timcadman changed the base branch from master to v7.0-dev March 16, 2026 13:56
@timcadman timcadman marked this pull request as ready for review March 16, 2026 13:57
@timcadman timcadman changed the title Perf batch 1 v5 Refactor: performance improvement batch 1 Mar 27, 2026
Copy link
Copy Markdown
Member

@StuartWheater StuartWheater left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Moving much of the argument testing, to .loadServersideObject makes sense.

PS: "perf_tests/perf_rate.R‎" has been structured in 6.3.5, so me my have fun merging those changes.

@timcadman timcadman merged commit e276da3 into v7.0-dev Mar 31, 2026
9 of 10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants